Publishing location for a limited time

ABSTRACT

A method and user device for limiting a time for which location data sharing is enabled for a user device of a data sharing group, the data sharing group comprising at least two user devices inclusive of the user device, each user device of the data sharing group configured to store data shared by user devices of the data sharing group on the respective user device and to maintain a list of the user devices in the data sharing group. The method comprises receiving an instruction through a user interface on the user device indicating that location data sharing is to be enabled for a limited time period after which location sharing is to be disabled, obtaining location data for the user device during the limited time period; and sending the location data to at least one other user device of the sharing group during the limited time period.

TECHNICAL FIELD

The present application relates to a user device and method for limitinga time for which location data sharing is enabled for a user device of adata sharing group.

BACKGROUND

Data sharing group applications are used on user devices in networks toshare information between members of one or more groups. For example,some such applications allow users to create static groups. Within eachgroup, data, such as location, images, calendar information, or the likecan be shared with other members of the group.

In some applications, the data shared amongst group members may includelocation data. For example, if location sharing is enabled by a user fora particular group of which the user is a member, other members of thatgroup can access the location data of the user. In some applications,each member of the group can view the locations of each group member whohas enabled location sharing on a map displayed on a respective userinterface.

The location data that is shared in some of these applications isobtained from a GPS receiver in the respective user device.

For privacy reasons or for other reasons, a user may not wish to sharelocation information with other group members at all times. As a result,there is a desire for a method of allowing the user to choose exactlywhen to share location information.

BRIEF DESCRIPTION OF THE DRAWINGS

Examples of embodiments will now be described in greater detail withreference to the accompanying drawings, in which:

FIG. 1 is a schematic diagram of an exemplary peer-to-peer data sharinggroup;

FIGS. 2A to 2F are screen shots of a user interface according to anembodiment;

FIG. 3 is a flowchart of a method for limiting a time for which locationdata sharing is enabled;

FIGS. 4A to 4D are screen shots of a user interface according to anembodiment;

FIGS. 5A to 5C are screen shots of a user interface according to anembodiment;

FIGS. 6A to 6E are screen shots of a user interface according to anembodiment;

FIG. 7 is a flowchart of a method for limiting a time for which locationdata sharing is enabled;

FIG. 8A is a block diagram of elements of a user device;

FIG. 8B is a block diagram of elements of a user device; and

FIG. 9 is a block diagram of a mobile device on which the methodsdescribed herein may be executed.

DETAILED DESCRIPTION

A data sharing group allows members of the group to share data withother members of the group. Users can create different groups of trustedmembers for different purposes, for example: school friends; family;co-workers; golf foursome; small business; book club; and hockey team,among others. Some data sharing groups are managed with the use of aserver, through which the data to be shared is sent. The data in somedata sharing group applications is stored on a server and accessed fromthe server by the group members.

Data sharing can also be accomplished, in some embodiments, with apeer-to-peer data sharing group. In peer-to-peer data sharing groups,data to be shared is sent from one user device to at least one otheruser device in the peer-to-peer group and stored on the at least oneother user device. Each device of a peer-to-peer data sharing group hasa copy of all the data shared with and received by that member of thegroup. The peer-to-peer data sharing group is entirely controlled on theuser devices as well.

An exemplary embodiment of a peer-to-peer data sharing group will now bedescribed with reference to FIG. 1. FIG. 1 shows a peer-to-peer datasharing group 100, comprising six members 101, 102, 103, 104, 105, and106. Of course, the peer-to-peer group can comprise any number ofmembers and six are shown in this example for illustrative purposesonly. Each member 101, 102, 103, 104, 105, and 106 of the group 100 cancommunicate with all of the other members 101, 102, 103, 104, 105, and106. In some embodiments private communications can also take placebetween selected members of the group. Data 110 represents data sharedby all of the group members, a copy of which is stored on each groupmember's device. In some embodiments, Data 110 may only be shared byselected members of the group, in which case it is only stored on theselected members' devices. Group members send messages between oneanother in order to share Data 110, as described in more detail below.

To communicate data to multiple users, in an embodiment of thepeer-to-peer data sharing group 100, traffic from any one member isdirected through at least a relay or router having the ability to directthe traffic to the respective members of the group 100. In someembodiments, each group member has an associated address such as aPersonal Identification Number (PIN) or an IP address. In someembodiments, the relay or router has the ability to accept from asending group member a single message containing the addresses ofmultiple receiving group members, and to re-distribute the messageindependently to each of the multiple receiving group members. In someembodiments, the relay or router subsequently provides the sending groupmember with a delivery acknowledgement when each of the receiving groupmembers receives the message. As a result, despite having sent only asingle message to the relay or router, the sending group member is ableto track the delivery of the message to each of the receiving groupmembers independently.

In peer-to-peer data sharing groups, members can use any user devicecapable of communicating with the other members for sharing the data.Non-limiting examples include mobile electronic devices, mobiletelephones, laptop computers, personal computers, personal digitalassistants, among others.

Non-limiting examples of data that can be shared are location data,images, lists, contact information, calendar information, among others.Examples of location data that can be shared are a location entered by amember, a location selected by a member, a location obtained from alocation determination system on a user device, a location calculatedbased on data available from a position broadcast system, such as GPS,GLONAS or systems based on triangulation of signals from antennae.

Shared location data can be displayed on user interfaces as textinformation, image data, such as a map, a video stream or any othersuitable interface or can be output to a user as an audio stream. It isto be understood that any suitable output can be used.

Shared location data can be used to present locations of one or moremembers of a peer-to-peer group on a map. The location data can also beused to track location history of group members or location status ofgroup members. Non-limiting examples of how the shared location data canbe used to display status of group members are shown in the screen shotsof FIGS. 2A to 2C. In FIG. 2A, a user, Lisa, is identified as searchingfor satellites. In FIG. 2B, a group member is identified as being inprivacy mode, i.e. this member is not sharing location data. In FIG. 2C,a group member is identified as sharing his or her location and thelocation is displayed on the user interface. FIGS. 2D to 2F, demonstratean example of presenting a history of a group member's location. FIG. 2Dshows the present location and FIGS. 2E and 2F show the member'slocation at two other times.

Sharing location data can raise privacy concerns with members of apeer-to-peer data sharing group. A member may only want the othermembers to be able to find them at certain times or for limited timeperiods. Members may also be concerned that they will forget todeactivate location sharing once it is enabled. In such a situation,other group members may be able to obtain that member's location datawhen the member may not desire the location data to be available.

In addition, if location sharing is enabled for extended periods oftime, a GPS receiver may be in use for the entire time, which consumes asignificant amount of power.

Setting a time limit for how long location sharing is enabled canalleviate a member's concern of forgetting to deactivate the locationsharing. As well, if location data to be shared is obtained from a GPSreceiver, for example, providing a member with an option to set a timelimit during which location sharing is enabled can conserve powerconsumption in a user device used by the member, for example if the GPSreceiver is turned off or not required to continually provide locationdata.

Thus, in one aspect, there is provided a user device comprising: anoutput interface for transmitting data to at least one other user deviceof a data sharing group, the data sharing group comprising at least twouser devices inclusive of the user device, each user device of the datasharing group configured to store data shared by user devices of thedata sharing group on the respective user device and to maintain a listof the user devices in the data sharing group; a user interface,configured to receive an instruction to enable location data sharing fora limited time period after which location sharing is to be disabled;and a location sharing module configured to, during the limited timeperiod, provide location data for the user device to the outputinterface to be transmitted to the at least one other user device of thedata sharing group.

In another aspect, there is provided a method for limiting a time forwhich location data sharing is enabled for a user device of a datasharing group, the data sharing group comprising at least two userdevices inclusive of the user device, each user device of the datasharing group configured to store data shared by user devices of thedata sharing group on the respective user device and to maintain a listof the user devices in the data sharing group, the method comprising:receiving an instruction through a user interface on the user deviceindicating that location data sharing is to be enabled for a limitedtime period after which location sharing is to be disabled; obtaininglocation data for the user device during the limited time period; andtransmitting the location data to at least one other user device of thesharing group during the limited time period.

In another aspect, there is provided a computer readable medium havingcomputer executable instructions stored thereon, that when executedcause a processor to implement a method for limiting a time for whichlocation data sharing for a user device of a data sharing group isenabled, the data sharing group comprising at least two user devicesinclusive of the user device, each user device of the data sharing groupconfigured to store data shared by user devices of the data sharinggroup on the respective user device and to maintain a list of the userdevices in the data sharing group, and the method comprising: receivingan instruction indicating that location data sharing is to be enabledfor a limited time period after which location sharing is to bedisabled; obtaining location data for the user device; and instructingan output to transmit the location data to at least one other userdevice of the data sharing group during the time limited period.

Referring now to FIG. 3, a method for limiting a time for which locationdata sharing is enabled for a user device in a data sharing group willbe described. In this embodiment, the data sharing group comprises atleast two user devices, each user device of the data sharing groupconfigured to store data shared by user devices of the data sharinggroup on the respective user device and to maintain a list of the userdevices in the data sharing group. In some embodiments, the data sharinggroup is a peer-to-peer data sharing group.

The method comprises at step 202, receiving an instruction through auser interface on the user device indicating that location data sharingis to be enabled for a limited time period, after which location sharingis to be disabled. Next, at step 204 location data for the user deviceis obtained during the limited time period. Finally, at step 206, thelocation data is transmitted to at least one other user device in thedata sharing group during the limited time period. In some embodiments,the location data is obtained periodically during the time period.Likewise, the location data, in some embodiments, is sent on a periodicbasis to the at least one other user device. In some embodiments, thedata is sent to the at least one other user device through a relay.

In an embodiment, receiving location data for the user device comprisesobtaining a current location from GPS data for the user device. Otherembodiments include, but are not limited to, obtaining a locationselected by a user, obtaining a location from a location determinationsystem on a user device, receiving location data calculated based ondata available from a position broadcast system, such as GPS, GLONAS orsystems based on triangulation of signals from antennae.

In an embodiment, the method further comprises deactivating locationdata sharing after the limited time period expires. Another exemplaryembodiment comprises turning off a location determination system, suchas a GPS receiver on the user device, after the limited time periodexpires. In some embodiments, a notification is created indicating thatthe location data sharing has been deactivated after the limited timeperiod expires. In yet another embodiment, the device may resumefollowing a pre-established schedule of times during which to share ornot share location data, as described below.

The instruction received through the user interface can be received inany format that permits the user to enter or select the limited timeperiod. In one exemplary embodiment, the method further comprisespresenting options on the user interface for selecting time periods forthe limited time period. For example, if the user interface is a displayscreen, a window such as that shown in FIG. 4A can be presented on adisplay of a user device, once the user has selected an option to sharehis or her location. In FIG. 4A, a pull down menu 302 is presented fromwhich the user can select how long location sharing is to be enabled.Selecting the pull down menu, in this particular example, presents alist of predefined time periods, as shown in the screen shot in FIG. 4B,where the list 304 comprises the choices of 30 minutes, 1 hour, 2 hours,and 4 hours. Of course, this example is for illustrative purposes onlyand in other embodiments, other time periods may be presented in thelist. As well, the list may be presented in any manner. For example, anew window can be opened. In other embodiments, a window is presented onthe user interface in which a time period can be entered manually. Instill further embodiments, the option to manually enter a time period isgiven together with the list of predefined time periods.

In some embodiments, an option can be presented to share a user device'slocation with all members of a peer-to-peer group or with selectedmembers. An example of a user interface presenting such an option isshown in FIGS. 4C and 4D.

In a still further embodiment, the method comprises presenting an optionto select specific days and times for which to enable location sharing.These days and times can be selected for a single iteration in someembodiments or on a recurring basis in other embodiments. Exemplaryimplementations of this embodiment are shown in the screen shotsdepicted in FIGS. 5A to 5C and FIGS. 6A to 6E. In FIG. 5A, the user ofthe device in the data sharing group has been presented with and hasselected the option 402 to choose specific days and times to share hisor her location with other members of the group. For illustrativepurposes only, this screen shot also shows two other options: nevershare my location 404 and always share my location 406. Any number orcombination of options can be presented in other embodiments andimplementations. In the implementation shown in FIGS. 5A to 5C, once theuser selects to choose specific days and times, the display changes to anew window shown in FIG. 5B, which presents two more options: to sharehis or her location at specific times 412 or at the times selected below414, where a list of time periods 416 is listed. In this particularexample, the user has chosen to select the time periods from the list416. FIG. 5C shows a screen shot of the list 416 where the member hasselected to share location on weekday mornings, afternoon and afterschool.

FIGS. 6A to 6E illustrate an exemplary implementation, whereby the usercan select specific times to share his or her location. FIG. 6A depictsthe same window as in FIG. 5B. However, in this screen shot, the userhas chosen the share his or her location at specific times 502. Thisselection results in the next screen, shown in FIG. 6B, which givesinstructions on how to choose times from a calendar that is presented onthe following screen which is shown in FIG. 6C. FIGS. 6D and 6E show anexample of what the screen looks like when the user highlights andselects time periods. Of course, FIGS. 6A to 6E show one specificimplementation and other embodiments, configurations and implementationsare possible.

The methods described herein can be implemented by software, hardware,firmware or any combinations thereof or by any other suitable structure.

In another aspect, a computer readable medium having computer executableinstructions stored thereon, that when executed cause a processor toimplement a method for limiting a time for which location data sharingfor a user device of a data sharing group is enabled is provided. Thedata sharing group comprises at least two user devices, each user deviceof the data sharing group configured to store data shared by userdevices of the data sharing group on the respective user device and tomaintain a list of the user devices in the data sharing group. Themethod implemented comprises the steps shown in the flowchart of FIG. 7.

The method implemented starts at step 602 with receiving an instructionindicating that location data sharing is to be enabled for a limitedtime period. At step 604, location data for the user device is obtained.At step 606, an output interface is instructed to transmit the locationdata to at least one other user device of the data sharing group duringthe time limited period.

Instructing the output interface to transmit the location data cancomprise instructing the output interface to transmit the location datato selected members of the data sharing group, in some embodiments. Forexample, the user may only want to share location with certain membersof the group. The method can be configured to present an option toselect the members with which the user's location should be shared. Theselected other members are the only members with which location datawill then be shared.

Different embodiments of the computer readable instructions canimplement any of the methods described herein.

In one embodiment of the computer readable medium, the location data forthe member is obtained from GPS (Global Positioning System) data. GPSdata can be obtained, for example, from a GPS chipset or GPS receiver ina user device, such as a mobile electronic device.

Referring now to FIG. 8A, a user device 700 will now be described. Theuser device 700 comprises an output interface 702, a user interface 704and a location sharing module 706. The user device, in some embodiments,is a mobile device, such as a mobile telephone, a laptop computer or apersonal digital assistant. In other embodiments, the user device is apersonal computer.

The output interface 702 is for transmitting data to at least one otheruser device of a data sharing group, the data sharing group comprisingat least two user devices, each user device of the data sharing groupconfigured to store data shared by user devices of the data sharinggroup on the respective user device and to maintain a list of the userdevices in the data sharing group. In a mobile device, the outputinterface 702 may be a transmitter. Alternatively, the output may be aport which may be connectable to a communication system, such as atelephone network or a cable network or a wireless network.

The user interface 704 is for receiving an instruction to enablelocation data sharing for a limited time period, after which locationsharing is to be disabled. Examples of user interfaces include, but arenot limited to, a display screen on an electronic device, a keyboard, atouch screen, or a voice enabled input system. It is to be understoodthat the user interface 704, in some embodiments, is not exclusively forreceiving an instruction to enable location data sharing. The userinterface 704 can be used by other applications operating on the userdevice. In user devices 700 where the user interface 704 is a touchdisplay screen, the instruction can, for example, be received usingscreens or windows, such as those shown in FIGS. 5A to 5C and 6A to 6E.

The location sharing module 706 is configured to, during the limitedtime period, provide location data for the user device to the output 702to be transmitted to the at least one other user device. The locationsharing module 706, in some embodiments, can implement any of themethods described herein. Furthermore, the location sharing module 706can be implemented using software, hardware, firmware or combinationsthereof.

The limited time period during which the location module 704 provideslocation data to the output 706 can be in any of the forms discussedherein. For example, the limited time period, in some embodiments,commences upon receipt of the instruction. In other embodiments, thelimited time period comprises a recurring time period. In still furtherembodiments, the limited time period is a time period selected by themember from a list of time periods.

In some embodiments of the user device 700, a location determinationsystem from which the location sharing module receives the location datais included. The location determination system, in some embodimentscomprises a GPS (Global Positioning System) receiver. The locationdetermination, in some embodiments, may further comprise a processor forcalculating location based on data received from the GPS receiver or anyother device or system that provides location data to users. In otherembodiments, the location determination system is a system thatcalculates location based on triangulation of radio signals. Otherlocation determination systems include GLONAS and Galileo.

In some embodiments, the user device calculates the location data. Inother embodiments, it is provided by an external position broadcastsystem. In other embodiments, the location data is a location input bythe member into the user device.

The user device 700, in some embodiments, further comprises a memory forstoring data shared by the user devices of the data sharing group. Inother embodiments, the user device 700 further comprises an inputinterface for receiving data shared by user devices of the data sharinggroup. The user device 700, in some implementations, further comprises atimer configured to track the limited time period. The timer can be anytiming device used in electronic devices. In some embodiments it is theclock used by a processor in the user device. It is to be understoodthat these embodiments are not mutually exclusive and can be implementedin any combination.

An exemplary embodiment of a user device is depicted in FIG. 8B. In thisembodiment, a user device 750 comprises an input interface 762, a memory764, a user interface 754, a location sharing module 756 and an outputinterface 752. The user interface 754, a location sharing module 756 andan output interface 752 are similar in function and configuration to theuser interface 704, the location sharing module 706 and the outputinterface 702 described with reference to FIG. 8A. The input interface762 is for receiving data from other devices in a data sharing group,such as a peer-to-peer data sharing group. The memory 764 is for storingthe data received.

Referring now to FIG. 9, shown is a block diagram of another mobiledevice 800 that may implement any of the methods described herein. It isto be understood that the mobile device 800 is shown with very specificdetails for example purposes only.

A processing device (a microprocessor 828) is shown schematically ascoupled between a keyboard 814 and a display 826. The microprocessor 828controls operation of the display 826, as well as overall operation ofthe mobile device 800, in response to actuation of keys on the keyboard814 by a user.

The mobile device 800 has a housing that may be elongated vertically, ormay take on other sizes and shapes (including clamshell housingstructures). The keyboard 814 may include a mode selection key, or otherhardware or software for switching between text entry and telephonyentry. The keyboard 814 is an example of an implementation of the userinterface 704 or 754 described with reference to FIGS. 8A and 8B.

In addition to the microprocessor 828, other parts of the mobile device800 are shown schematically. These include: a communications subsystem870; a short-range communications subsystem 802; the keyboard 814 andthe display 826, along with other input/output devices including a setof LEDS 804, a set of auxiliary I/O devices 806, a serial port 808, aspeaker 811 and a microphone 812; as well as memory devices including aflash memory 816 and a Random Access Memory (RAM) 818; and various otherdevice subsystems 820. The mobile device 800 may have a battery 821 topower the active elements of the mobile device 800. The mobile device800 is in some embodiments a two-way radio frequency (RF) communicationdevice having voice and data communication capabilities. In addition,the mobile device 800 in some embodiments has the capability tocommunicate with other computer systems via the Internet.

Operating system software executed by the microprocessor 828 is in someembodiments stored in a persistent store, such as the flash memory 816,but may be stored in other types of memory devices, such as a read onlymemory (ROM) or similar storage element. In addition, system software,specific device applications, or parts thereof, may be temporarilyloaded into a volatile store, such as the RAM 818. Communication signalsreceived by the mobile device 800 may also be stored to the RAM 818.

The microprocessor 828, in addition to its operating system functions,enables execution of software applications on the mobile device 800. Apredetermined set of software applications that control basic deviceoperations, such as a voice communications module 830A and a datacommunications module 830B, may be installed on the mobile device 800during manufacture. In addition, a personal information manager (PIM)application module 830C may also be installed on the mobile device 800during manufacture. The PIM application is in some embodiments capableof organizing and managing data items, such as e-mail, calendar events,voice mails, appointments, and task items. The PIM application is alsoin some embodiments capable of sending and receiving data items via awireless network 810. In some embodiments, the data items managed by thePIM application are seamlessly integrated, synchronized and updated viathe wireless network 810 with the device user's corresponding data itemsstored or associated with a host computer system.

In addition, a software application to perform a location sharingfunction 830D may be installed. The location sharing function 830D mayimplement any of the methods described herein for limiting a time forwhich location data sharing is enabled for a user device of apeer-to-peer data sharing group. The location sharing function 830D isan exemplary implementation of location sharing modules 706 and 750described with reference to FIGS. A and B.

As well, additional software modules, illustrated as another softwaremodule 830N, may be installed during manufacture.

Communication functions, including data and voice communications, areperformed through the communication subsystem 870, and possibly throughthe short-range communications subsystem 802. The communicationsubsystem 870 includes a receiver 850, a transmitter 852 and one or moreantennas, illustrated as a receive antenna 854 and a transmit antenna856. The transmitter 852 and transmit antenna 854 are an exemplaryimplementation of the output interfaces 702 and 752 described withreference to FIGS. 8A and 8B. In addition, the communication subsystem870 also includes a processing module, such as a digital signalprocessor (DSP) 858, and local oscillators (LOs) 860. The specificdesign and implementation of the communication subsystem 870 isdependent upon the communication network in which the mobile device 800is intended to operate. For example, the communication subsystem 870 ofthe mobile device 800 may be designed to operate with the Mobitex™,DataTAC™ or General Packet Radio Service (GPRS) mobile datacommunication networks and also designed to operate with any of avariety of voice communication networks, such as Advanced Mobile PhoneService (AMPS), Time Division Multiple Access (TDMA), Code DivisionMultiple Access CDMA, Personal Communications Service (PCS), GlobalSystem for Mobile Communications (GSM), etc. Other types of data andvoice networks, both separate and integrated, may also be utilized withthe mobile device 800.

Network access requirements vary depending upon the type ofcommunication system. For example, in the Mobitex™ and DataTAC™networks, mobile devices are registered on the network using a uniquePersonal Identification Number (PIN) associated with each device. InGPRS networks, however, network access is associated with a subscriberor user of a device. A GPRS device therefore requires a subscriberidentity module, commonly referred to as a Subscriber Identity Module(SIM) card, in order to operate on a GPRS network.

When required network registration or activation procedures have beencompleted, the mobile device 800 may send and receive communicationsignals over the communication network 810. Signals received from thecommunication network 810 by the receive antenna 854 are routed to thereceiver 850, which provides for signal amplification, frequency downconversion, filtering, channel selection, etc., and may also provideanalog to digital conversion. Analog-to-digital conversion of thereceived signal allows the DSP 858 to perform more complex communicationfunctions, such as demodulation and decoding. In a similar manner,signals to be transmitted to the network 810 are processed (e.g.,modulated and encoded) by the DSP 858 and are then provided to thetransmitter 852 for digital to analog conversion, frequency upconversion, filtering, amplification and transmission to thecommunication network 810 (or networks) via the transmit antenna 856.

In addition to processing communication signals, the DSP 858 providesfor control of the receiver 850 and the transmitter 852. For example,gains applied to communication signals in the receiver 850 and thetransmitter 852 may be adaptively controlled through automatic gaincontrol algorithms implemented in the DSP 858.

In a data communication mode, a received signal, such as a text messageor web page download, is processed by the communication subsystem 870and is input to the microprocessor 828. The received signal is thenfurther processed by the microprocessor 828 for an output to the display826, or alternatively to some other auxiliary I/O devices 806. A deviceuser may also compose data items, such as e-mail messages, using thekeyboard 814 and/or some other auxiliary I/O device 806, such as atouchpad, a rocker switch, a thumb-wheel, or some other type of inputdevice. The composed data items may then be transmitted over thecommunication network 810 via the communication subsystem 870.

In a voice communication mode, overall operation of the device issubstantially similar to the data communication mode, except thatreceived signals are output to a speaker 811, and signals fortransmission are generated by a microphone 812. Alternative voice oraudio I/O subsystems, such as a voice message recording subsystem, mayalso be implemented on the device 800. In addition, the display 826 mayalso be utilized in voice communication mode, for example, to displaythe identity of a calling party, the duration of a voice call, or othervoice call related information.

The short-range communications subsystem 802 enables communicationbetween the mobile device 800 and other proximate systems or devices,which need not necessarily be similar devices. For example, theshort-range communications subsystem may include an infrared device andassociated circuits and components, or a Bluetooth™ communication moduleto provide for communication with similarly-enabled systems and devices.

What has been described is merely illustrative of the application of theprinciples of methods, modules and devices described herein. Otherarrangements and methods can be implemented by those skilled in the artwithout departing from the spirit and scope of the embodiments.

The invention claimed is:
 1. A user device comprising: an outputinterface for transmitting data to a plurality of other user devices ofa peer-to-peer data sharing group, the data sharing group comprising atleast two user devices other than the user device, each user device ofthe data sharing group configured to store data shared by user devicesof the data sharing group on the respective user device and to maintaina list of the user devices in the data sharing group, wherein the datastored by each user device of the data sharing group enables access tolocation data for other user devices of the data sharing group withoutcontacting a server; a user interface, configured to receive aninstruction to enable periodic location data sharing of location datafor the user device for a limited length of time after which locationsharing is to be disabled; and a location sharing module configured to:during the limited length of time, periodically provide location datafor the user device to the output interface to be transmitted to theplurality of other user devices of the data sharing group; and outsidethe limited length of time, cease to periodically provide location datafor the user device to the output interface, wherein periodicallyproviding location data for the user device to the output interfacecomprises: periodically sending a single message to a relay or routerfor independent distribution to the plurality of other user devices ofthe data sharing group without the location data being retained by aserver, the single message containing the location data and addresses ofthe plurality of other user devices of the data sharing group, whereinthe user device subsequently receives from the relay or router adelivery acknowledgment when each of the plurality of other user devicesof the data sharing group receives the single message.
 2. The userdevice according to claim 1, further comprising a memory for storingdata shared by the user devices of the data sharing group.
 3. The userdevice according to claim 1, further comprising an input interface forreceiving data shared by the user devices of the data sharing group. 4.The user device according to claim 1, wherein location sharing module isconfigured to commence providing the location data for the user deviceto the output interface upon receipt of the instruction.
 5. The userdevice according to claim 1, further comprising a location determinationsystem from which the location sharing module receives the locationdata.
 6. The user device according to claim 5, wherein the locationdetermination system comprises a GPS (Global Positioning System)receiver.
 7. The user device according to claim 1, wherein the locationsharing module is further configured to instruct a locationdetermination system to turn off after the limited length of time. 8.The user device according to claim 1, further comprising a timerconfigured to track the limited length of time.
 9. The user deviceaccording to claim 1, wherein the user device is a mobile device.
 10. Amethod for limiting a time for which location data sharing is enabledfor a user device of a peer-to-peer data sharing group, the data sharinggroup comprising at least two user devices other than the user device,each user device of the data sharing group configured to store datashared by user devices of the data sharing group on the respective userdevice and to maintain a list of the user devices in the data sharinggroup, wherein the data stored by each user device of the data sharinggroup enables access to location data for other user devices of the datasharing group without contacting a server, the method comprising:receiving an instruction through a user interface on the user deviceindicating that periodic location data sharing of location data for theuser device is to be enabled for a limited length of time after whichlocation sharing is to be disabled; during the limited length of time:periodically obtaining location data for the user device; andperiodically transmitting the location data to a plurality of other userdevices of the sharing group; and outside the limited length of time,cease periodically transmitting the location data, wherein periodicallytransmitting the location data to the plurality of other user devices ofthe sharing group comprises: periodically sending a single message to arelay or router for independent distribution to the plurality of otheruser devices of the data sharing group without the location data beingretained by a server, the single message containing the location dataand addresses of the plurality of other user devices of the data sharinggroup, wherein the user device subsequently receives from the relay orrouter a delivery acknowledgment when each of the plurality of otheruser devices of the data sharing group receives the single message. 11.The method according to claim 10, wherein obtaining location data forthe user device comprises receiving a current location from GPS data inthe user device.
 12. The method according to claim 10, furthercomprising turning off a GPS receiver in the user device after thelimited length of time expires.
 13. The method according to claim 10,further comprising creating a notification indicating that the locationdata sharing has been disabled after the limited length of time expires.14. The method according to claim 10, further comprising enablingperiodic location sharing according to a pre-established schedule ofsubsequent lengths of time after the limited length of time expires. 15.A non-transitory computer readable medium having computer executableinstructions stored thereon, that when executed cause a processor toimplement a method for limiting a time for which location data sharingfor a user device of a peer-to-peer data sharing group is enabled, thedata sharing group comprising at least two user devices other than theuser device, each user device of the data sharing group configured tostore data shared by user devices of the data sharing group on therespective user device and to maintain a list of the user devices in thedata sharing group, wherein the data stored by each user device of thedata sharing group enables access to location data for other userdevices of the data sharing group without contacting a server, and themethod comprising: receiving an instruction indicating that periodiclocation data sharing of location data for the user device is to beenabled for a limited length of time after which location sharing is tobe disabled; periodically obtaining location data for the user device;and instructing an output interface to: during the limited length oftime, periodically transmit the location data to a plurality of otheruser devices of the data sharing group; and outside the limited lengthof time, cease to periodically transmit the location data, whereinperiodically transmitting the location data to the plurality of otheruser devices of the data sharing group comprises: periodically sending asingle message to a relay or router for independent distribution to theplurality of other user devices of the data sharing group without thelocation data being retained by a server, the single message containingthe location data and addresses of the plurality of other user devicesof the data sharing group, wherein the user device subsequently receivesfrom the relay or router a delivery acknowledgment when each of theplurality of other user devices of the data sharing group receives thesingle message.
 16. The non-transitory computer readable medium of claim15, wherein the method further comprises presenting options on a userinterface for selecting lengths of time for the limited length of time.17. The non-transitory computer readable medium of claim 16, wherein theoptions include one or more lengths of time starting from a presenttime.
 18. The non-transitory computer readable medium of claim 16,wherein the options include one or more recurring lengths of time. 19.The non-transitory computer readable medium of claim 16, wherein themethod further comprises presenting options in the form of a calendar,from which the user can select one or more lengths of time for thelimited length of time.
 20. The non-transitory computer readable mediumof claim 15, wherein the location data is obtained from GPS (GlobalPositioning System) data.